package com.example.demo.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.demo.dao.ChapterMapper;
import com.example.demo.model.Book;
import com.example.demo.model.Chapter;
import com.example.demo.service.ParseInfoPage;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import org.springframework.stereotype.Service;

import java.util.ArrayList;

/**
 * 功能描述：
 *  解析小说信息页面
 * @Author: Zhanghf
 * @Date: 2021/12/11 19:13
 */
@Service
public class ParseInfoPageYunxs extends DefaultParseInfoPage {
    @Override
    public void parseCatalogue(String bookurl,Integer bookid) {
        //每次解析目录都先清空一下集合
//        urllist.clear();
//        chapterlist.clear();
//        //解析小说目录页数据
//        // content 目录页源码
        String content = httpUtils.doGetHtml(bookurl);
        Document document = Jsoup.parse(content);
//        //小说相关信息的解析
//        Elements meta = document.getElementsByTag("meta");
//        type = meta.select("[property=og:novel:category]").attr("content");  //类别
//        author = meta.select("[property=og:novel:author]").attr("content");  //作者
//        bookname = meta.select("[property=og:novel:book_name]").attr("content"); //书名
//
//        //简介
//        Element words = document.getElementsByClass("words").get(0);
//        Element introduction_p = words.getElementsByTag("p").get(2);
//
//        introduction = introduction_p.text().replaceAll("简介： ", "");
//        //目录标签
//        Elements list = document.getElementsByClass("list_box");
//        Element ul = list.get(0);
//        Elements li = ul.getElementsByTag("li");
//        int size = li.size();

        //封面图
        imgsrc = document.getElementsByClass("pic").get(0).getElementsByTag("img").get(0).attr("src");

//        ArrayList<Chapter> chapters = new ArrayList<>();
//        for (int i = 0; i < size; i++) {
//            String text = li.get(i).getElementsByTag("a").text();//章节名
//            Chapter chapter = new Chapter(bookid, i + 1, text);
//
//            //每一章节的地址后缀
//            String href = li.get(i).getElementsByTag("a").attr("href");
//            urllist.add(href);
//            chapterlist.add(text);
//            chapters.add(chapter);
//        }
//        Book book = bookMapper.selectOne(new QueryWrapper<Book>().eq("id", bookid).select("latestnum"));
//
////        book记录的latest字段为空，该图书的章节未存储在chapter表中
//        if (book==null)
//        {
//            batchService.saveBatch(chapters,size);
//        }
////        网页上目录的章节数等于book记录的最后一次爬取的章节号，章节已存储在chapter中
//        else if (size==book.getLatestnum()) {
//            return;
//        }
////        网站更新了章节，将更新的章节存储在chapter中
//        else {
//            Integer latestnum = book.getLatestnum();
//            batchService.saveBatch(chapters.subList(latestnum,size),size-latestnum);
//        }
    }
}
